Skip to main content

Debugging Push-Notification Service

In case of Client application / APP does not receive push notification then check as follows:

Notification Metrics:

Check metrics for notification_failed :   and what counting is reported

Available Reason strings and root causes

Available Reason strings are grouped to internal reasons at KOBIL Shift Notifier service level - and to external services reasons/exceptions

Internal "reason" - Notification service internal reason ":not_started"

  • Indicate that named push worker is not running for this provider + appname + tenant ( push worker name = {APNS|FCM|HPK}_{appname}_{tenantId} )
    Reasons for this are most likely due to

    • invalid config, check logs for

      • Failed to build valid apns config due to ..
      • Failed to process new app
      • Failed to create provider due to missing config
    • app was not registered at all / has no credentials set for specific provider. Check if app with expected name + tenant and credentials section for needed provider exists in

      • AST-Version service
      • notifier /push/app/{appName}/{tenantId}
    • firewall / proxy setting prevent access to push provider api

    • Push provider URLs are:

      • [fcm.googleapis.com/fcm/send](http://fcm.googleapis.com/fcm/send)
      • [api.push.apple.com](http://api.push.apple.com)
      • [api.development.push.apple.com](http://api.development.push.apple.com)
      • [https://oauth-login.cloud.huawei.com/oauth2/v3/token](https://oauth-login.cloud.huawei.com/oauth2/v3/token)
      • [https://push-api.cloud.huawei.com/v1/](https://push-api.cloud.huawei.com/v1/)

External "reason" - depending on external push services response

  • Provider specific error codes when "Push" was initially delivered (send) to respective provider successfully but subsequent failed to be delivered to client/APP with one of the following reasons:

    • Reason List iOS

      Reason code notifierAPNS Error stringQuick Fix
      Reason code notifierAPNS Error stringQuick Fix
      ---------
      :bad_device_tokenBadDeviceTokenCheck if configured apps environment ( flag iosIsDevelopment ) matches the environment of users push token
      :bad_topicBadTopicCheck if configured app has valid bundleId set
      :device_token_not_for_topicDeviceTokenNotForTopicCheck if users device token was created for bundleId of configured app
      :topic_disallowedTopicDisallowedCheck if bundleId in configured app credentials matches the topic of its apns certificate

      Please see full list of possible apns responses

    • Reason List FCM

      Reason code notifierFCM ReasonQuick Fix
      Reason code notifierFCM ReasonQuick Fix
      ---------
      :authentication_errorAuthentication ErrorCheck correctness of androidApiKey in configured app credentials
      :mismatch_sender_idMismatched SenderCheck if androidApiKey of configured app credentials matches the expected fcm project for which addressed clients register
      :timeout-check if access to fcm api is not blocked

      Please check full ist of fcm error codes

    • Reason List Huawei (HPK)

      Reason code notifierHPK ReasonQuick Fix
      Reason code notifierHPK ReasonQuick Fix
      ---------
      :incorrect_parameter80100001
      :incorrect_message_structure80100003
      :invalid_token80300007
      :timeout-Check if access to huawei api is not blocked

When no metric for "noticiation_failed" or "notification_success" is counted but reported to the logs:

  • Check if addressed client has registered push token
  • Check if addressed client has mute setting which surpress notification delivery